Multi-bit phase alignment for synchronization mark pattern matching

ABSTRACT

Embodiments of the present invention relate to the detection of synchronization marks in data storage and retrieval. To detect a synchronization mark, embodiments of the present invention require both pattern matching and proper phase alignment, following a repeating synchronization field. According to one particular embodiment, proper phase alignment following a repeated four bit synchronization field, is utilized in conjunction with pattern matching, to identify a synchronization mark. By allowing a synchronization mark to be identified only with proper phase alignment at the earliest possible occurrence of the synchronization mark, accuracy of synchronization mark detection may be improved.

BACKGROUND OF THE INVENTION

Recently developed data storage devices, such as magnetic disk drive devices (i.e., hard disk drives), have increased storage capacity and increased data access speed. The magnetic disk drive devices have become widely used as auxiliary memory devices for computer systems. The primary components of a magnetic disk drive device that affect storage capacity and access speed are the magnetic recording head, the recording medium, the servo mechanism, the signal processing technique used in the read/write channel, and the like. As real densities increase, inter-symbol interference (ISI), transition-dependent noise and non-linear distortions at high densities, and bandwidth limitations at high data rates lead to performance degradation. For example, the level of ISI between neighboring recorded bits in magnetic recording channels increases with recording density.

The signal processing techniques utilizing PRML (Partial Response Maximum Likelihood) detection have greatly contributed to the increased storage densities and high access speeds seen in modem magnetic disk drive devices. PRML data channels are synchronization data detection channels where synchronization refers to the frequency and phase locking of the channel to the readback signal in order to detect the data properly.

A Viterbi detector is used for detecting the data pulses in the digitized read signal and recovering the bits. Advanced replay equalizations have been adopted in the magnetic recording technology to shape the channel pulse response to some specified target shape, which has a shorter duration (higher bandwidth) and this is called partial-response signaling or equalization. The Viterbi detector that is matched to the target shape normally follows the partial response equalizer. The Viterbi detector recovers the encoded data that was originally recorded on the magnetic medium. Such a detector receives an equalized digital read signal and generates from it an encoded data signal, which is then decoded to produce the final read data signal.

At the heart of the Viterbi decoding algorithm is the trellis, which is an extension of the encoder state machine that shows the passage of time. A section of the trellis shows the possible state transitions and output code words for one period of the encoder. Every branch between two states represents a possible state change in the encoder. The Viterbi procedure determines the best path (most likely sequence of symbols from a finite alphabet) ending in each state j, where state j represents the memory in the channel, by comparing the samples in the sample sequence y₀, y₁, . . . y_(n) to the expected sequence of read back samples associated with all possible paths that can end in state j at time n.

A 16-state equalization target is a conventional approach for providing equalization in a PRML read data channel. An improvement has been made in equalization in U.S. Pat. No. 7,286,595 to Cideciyan et al, which is incorporated by reference herein for all purposes. The improvement includes a lengthened equalization target filter with a matched filter metric in a Viterbi detector. Maintaining precisely the desired partial response shape through adaptive equalizations at the channel output, permits the Viterbi detector to be efficiently realized and thus improves the bit detection quality.

For the data channel in a disk drive to read back data written in a sector, the channel must achieve both bit synchronization and word synchronization. Bit synchronization is the process of using acquisition gain and timing loops over a preamble pattern in order to achieve proper synchronization bit sampling, that is proper gain, phase, and frequency. Word synchronization is the process of finding the exact starting location of the data after the preamble field.

In current disk drives with increasing speed and data density, conventional word synchronization schemes are insufficient and generally provide poor performance. Miss-detecting the word synchronization pattern or Synchronization Mark (“SM”) or finding it early or later, corrupts the data detection in the entire sector. When the word synchronization detector fails to start the data time-varying-trellis correctly at the start of data, then the data error rates are degraded.

An advancement has been described in U.S. Pat. No. 7,010,065 to Cideciyan et al, which is incorporated by reference herein for all purposes. There, word synchronization is used with large coding distance and fault tolerance for PRML systems.

While the above approach is useful, accurate and reliable detection of synchronization marks can be difficult to achieve owing to the large amounts of data typically stored on a disk medium. Specifically, the large volumes of data can randomly mimic the bit patterns expected from a synchronization mark, leading to a false positive detection. Accordingly, there is a need in the art for improved techniques for improving the reliability of the sync mark detection.

BRIEF SUMMARY OF THE INVENTION

Embodiments of the present invention relate to the detection of synchronization marks in data storage and retrieval. To detect a synchronization mark, embodiments of the present invention require both pattern matching and proper phase alignment, following a repeating synchronization field. According to one particular embodiment, proper phase following a repeated four bit synchronization field, is utilized in conjunction with pattern matching, to identify a synchronization mark. By allowing a synchronization mark to be identified only with proper phase alignment at the earliest possible bit of the synchronization mark, accuracy of synchronization mark detection may be improved.

An embodiment of a method in accordance with the present invention of detecting a synchronization mark, comprises, reading a stream of bits from a storage medium, performing pattern matching to determine whether a pattern of bits read from the storage medium, matches at least a portion of a synchronization mark, recognizing in the stream of bits, a phase of a repeated pattern of N bits indicative of a synchronization field, performing phase alignment to determine whether a location of the first bit of the pattern, is consistent with an expected location of the synchronization mark based upon the phase, and indicating an existence of a synchronization mark only where the pattern matching and phase alignment are satisfied.

An embodiment of an apparatus in accordance with the present invention for detecting a synchronization mark, comprises, a first generator configured to generate a first signal indicating that a pattern of bits read from a storage medium matches at least a portion of a synchronization mark, a second generator configured to generate a second signal indicating that a location of the first bit of the pattern, is consistent with an expected location of the synchronization mark based upon a phase of a repeated pattern of bits in a synchronization field, and a comparator having a first node in electronic communication with the first generator and a second node in electronic communication with the second generator, the comparator configured to generate a third signal indicating an existence of a synchronization mark, only where the first signal and the second signal are received.

An apparatus for detecting a synchronization mark, the apparatus comprising a processor in electronic communication with a computer readable storage medium, the computer readable storage medium having stored thereon code configured to direct the processor to read a stream of bits from a storage medium, perform pattern matching to determine whether a pattern of bits read from the storage medium, matches at least a portion of a synchronization mark, recognize in the stream of bits, a phase of a repeated pattern of N bits indicative of a synchronization field, perform phase alignment to determine whether a location of the first bit of the pattern, is consistent with an expected location of the synchronization mark based upon the phase, and indicate an existence of a synchronization mark, only where the pattern matching and phase alignment are satisfied

Additional embodiments and features are set forth in part in the description that follows, and in part will become apparent to those skilled in the art upon examination of the specification or may be learned by the practice of the invention. A further understanding of the nature and advantages of the present invention may be realized by reference to the remaining portions of the specification and drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a storage system according to embodiments of the invention.

FIG. 2 is a block diagram of a magnetic disk drive device according to embodiments of the invention.

FIG. 3 is a block diagram of a read/write channel circuit of FIG. 2 that employs PRML detection according to embodiments of the invention.

FIG. 4 illustrates an equalizer.

FIG. 5 illustrates a block diagram of a data channel that uses a conventional equalization target.

FIG. 6 illustrates a block diagram of a data channel that uses a conventional equalization target and a matched filter metric.

FIG. 7 illustrates a block diagram of a data channel that uses a matched 16 state equalization target and a matched filter metric.

FIG. 8 illustrates a matched filter metric trellis structure.

FIG. 9 presents a simplified schematic view of a timing diagram illustrating performance of the phase alignment requirement for detection of a synchronization mark.

FIG. 9A illustrates a lengthened equalization target filter architecture that comprises a matched 16 state equalizer target and a matched filter.

FIG. 10 is a diagram illustrating various formats of primary synchronization marks and embedded synchronization marks according to embodiments of the invention.

FIG. 11A is a diagram illustrating a conventional 34-bit primary synchronization mark pattern.

FIGS. 11B-11C are diagrams illustrating 34-bit and 20-bit primary synchronization marks according to embodiments of the invention.

FIG. 12 shows 16-bit, 20-bit and 24 bit embedded synchronization marks according to embodiments of the invention.

FIGS. 13A-13B illustrate exemplary 34-bit and 20-bit primary synchronization detectors according to embodiments of the invention.

FIG. 14 illustrates exemplary 16-bit, 20-bit, and 24-bit embedded synchronization detectors according to embodiments of the invention.

FIGS. 15-16 illustrate exemplary circuit architectures for generators and detectors of 16-bit, 20-bit and 24-bit embedded synchronization marks according to embodiments of the invention.

DETAILED DESCRIPTION OF THE INVENTION

FIG. 1 illustrates a storage system 100 according to an embodiment of the present invention. In FIG. 1, a transducer 110 is under control of an actuator 120. The actuator 120 controls the position of the transducer 110. The transducer 110 writes and reads data on magnetic media 130. The read/write signals are passed to a data channel 140. A signal processor system 150 controls the actuator 120 and processes the signals of the data channel 140. In addition, a media translator 160 is controlled by the signal processor system 150 to cause the magnetic media 130 to move relative to the transducer 110. Nevertheless, the present invention is not meant to be limited to a particular type of storage system 100 or to the type of media 130 used in the storage system 100.

FIG. 2 is a block diagram of a magnetic disk drive device 200 according to an embodiment of the present invention. In FIG. 2, disks 210 are rotated by a spindle motor 234, and heads 212 are positioned at surfaces of corresponding ones of disks 210. Heads 212 are mounted on corresponding servo arms that extend from an E-shaped block assembly 214 to disks 210. Block assembly 214 has an associated rotary voice coil actuator 230 that moves block assembly 214 and thereby changes to positions of heads 212 for reading data from or writing data to a specified position on one or more of disks 210.

A pre-amplifier 216 pre-amplifies a signal picked up by heads 212 and thereby provides read/write channel circuit 218 with an amplified signal during a reading operation. During a write operation, pre-amplifier 216 transfers an encoded write data signal from the read/write channel circuit 218 to heads 212. In a read operation, read/write channel circuit 18 detects a data pulse from a read signal provided by pre-amplifier 216 and decodes the data pulse. Read/write channel circuit 218 transfers the decoded data pulse to a disk data controller (DDC) 20. Furthermore, read/write channel circuit 18 also decodes write data received from the DDC 220 and provides the decoded data to pre-amplifier 216.

DDC 220 both writes data received from a host computer (not shown) onto disks 210, through read/write channel circuit 18 and pre-amplifier 216, and transfers read data from disks 210 to the host computer. DDC 220 also interfaces between the host computer and a microcontroller 224. A buffer RAM (Random Access Memory) 222 temporarily stores data transferred between DDC 220 and the host computer, microcontroller 224, and read/write channel circuit 218. Microcontroller 224 controls track seeking and track following functions in response to read and write commands from the host computer.

A ROM (Read Only Memory) 226 stores a control program for microcontroller 224 as well as various setting values. A servo driver 228 generates a driving current for driving actuator 230 in response to a control signal, generated from microcontroller 224 that provides control of the position of heads 212. The driving current is applied to a voice coil of actuator 230. Actuator 230 positions heads 212 relative to disks 210 in accordance with the direction and amount of the driving current supplied from servo driver 228. A spindle motor driver 232 drives spindle motor 234, which rotates disks 210, in accordance with a control value generated from microcontroller 224 for controlling disks 210.

FIG. 3 is a block diagram of a read/write channel circuit 300 of FIG. 2 that employs PRML detection. In FIG. 3, the read/write channel circuit 300 includes a physical recording channel 338 having a read/write means and a recording medium, a write channel circuit 340 for writing data onto the recording medium, and a read channel circuit 342 for reading data from the recording medium. Write channel circuit 340 is composed of an encoder 344, a pre-decoder 346, and a write compensator 348. Read channel circuit 342 is composed of an automatic gain control (AGC) amplifier 350, a low pass filter (LPF) 352, an analog-to-digital converter (ADC) 354, an adaptive equalizer 356, a Viterbi detector 358, a gain controller 360, a timing controller 362, a decoder 364 and a synchronization detector 366.

In operation, encoder 344 encodes write data, input to be written onto the recording medium, into a predetermined code. For example, an RLL (Run Length Limited) code, in which the number of adjacent zeros must remain between specified maximum and minimum values, is commonly used for this predetermined code. However, the present invention is not meant to be limited to RLL and other coding may be used. Pre-decoder 346 is included to prevent error propagation. Write compensator 348 reduces, non-linear influences arising from the read/write head. However, because the response of the actual recording channel does not exactly coincide with this transfer function, some subsequent equalization is always required.

A read channel circuit in a generic read/write channel circuit of a magnetic disk drive device includes components for initial processing of the analog read signal generated by the read/write head of the device. This processing provides automatic gain control (AGC) amplification, filtering, and equalization, as well as analog-to-digital conversion. Automatic gain control (AGC) amplifier 350 amplifies an analog signal read from the disk. Low pass filter 352 removes high frequency noise from and reshapes the signal output from AGC amplifier 350. The signal output from low pass filter 352 is converted into a discrete digital signal by analog-to-digital (A/D) converter 354. The resulting digital signal is then applied to adaptive equalizer 356, which equalizes the signal to generate desired waveforms. Viterbi detector 358 receives the equalized signal output from adaptive equalizer 356 and from it generates encoded data. Decoder 64 decodes the encoded data output from Viterbi detector 358 to generate the final read data. At the same time, in order to correct the analog signal envelope and the digitization sample timing, gain controller 360 controls the gain of AGC amplifier 350 and timing controller 362 controls sample timing for A/D converter 354.

The synchronization detector 366 is a dedicated detector used to determine the start of data. As discussed in detail below, the synchronization detector 366 is optimized for detecting synchronization field and synchronization word patterns.

FIG. 4 illustrates an equalizer 400. In FIG. 4, an input signal 410 is fed into a shift register circuit 412. With each successive input to the shift register, the values of the memory elements 420 are tapped off. The tapped signals may be multiplied 430 by selected coefficients 440. The resulting tapped signals 450 are then added 460 to provide an output 470.

FIG. 5 illustrates a block diagram 500 of a data channel that uses a conventional equalization target. In FIG. 5, a readback signal a_(k) 510 is applied to the equalizer represented by the equalizer target 512 given by (1−D²)(1+p₁D+p₂D²). A noise whitened target y_(k) 530 is produced at the input of the Viterbi detector 540.

FIG. 6 illustrates a block diagram 600 of a data channel that uses a conventional equalization target and a matched filter metric. In FIG. 6, a readback signal a_(k) 610 is applied to the equalizer having an equalizer target 612 given by (1−D²)(1+p₁D+p₂D²). The equalization target 612 thus includes a base partial response component, i.e., (1−D²), and a fractional coefficient polynomial component to whiten the noise, i.e., (1+p₁D+p₂D²). A noise whitened target y_(k) 630 is provided at the input of the matched filter 650. The matched filter 650 is given by (−1+D²)(p₂+p₁D+D²). The matched filter 650 provides an output z_(k) 660 to the Viterbi detector 640. The matched filter 650 facilitates transformation of the decoded output. Thus, the block diagram 600 of FIG. 6 provides Euclidean metric detection.

FIG. 7 illustrates a block diagram 700 of a data channel that uses a matched 16 state equalization target and a matched filter metric. In FIG. 7, a readback signal a_(k) 710 is applied to the equalizer represented by a matched 16-state equalizer target 712 given by (1−D²)(1+p₁D+p₂D²)(P₂+p₁D+D²). A portion of the matched 16-state equalizer target formerly part of the matched filter 750. A noise target y_(k) 730 is provided at the input of the matched filter 750. The matched filter 750 is given by (−1+D2). The matched filter 750 provides an output z_(k) 760 to the Viterbi detector 740.

The matched 16-state (MS16) equalization target 712 is provided by rearranging components of the equalization target with components of the matched filter. The equalization target 712 thus includes a base partial response component, i.e., (1−D²); a fractional coefficient polynomial component to whiten the noise, i.e., (1+p₁D+p₂D²), and a time-reversed replica of the noise-whitening component 780. Thus, the time-reversed replica of the noise-whitening component 780 comes from the matched filter components shown in FIG. 6.

The matched 16-state equalizer target 712 may be represented by (1+aD+bD²−bD⁴−aD⁵−D⁶), where a=(p₁/p₂)+p₁ and b=((p₁ ²+1)/p₂)+p₂−1. The MS16 equalization target 712 is a symmetrical target with only two parameters for programming. The a and b parameters allow great flexibility in target response and each can be changed independently while still maintaining a null at DC and at Nyquist.

The MS16 equalization target 712 also exhibits less high frequency energy than the native 16-state equalization target 512, 612 shown in FIGS. 5-6. Very low resolution systems can also be equalized more readily by using the MS16 equalization target 712.

The MS16 equalization target 712 exhibits less SER loss due to tap weight quantization effects. The hardware needs to store the tap weights of the equalization FIR in a finite precision. When these tap weights are quantized, some loss in SER occurs. The MS16 equalization target 712 is superior in this area.

The MS16 equalization target 712 allows the use of a very simple non-programmable matched filter 750 prior to Viterbi detector 740. It has been demonstrated that the overall required precision after the equalization FIR is less when using the MS16 Target 712.

FIG. 8 illustrates a matched filter metric trellis structure 800. In FIG. 8, the initial codeword states 810 are shown on the left with the possible subsequent codeword states 812 represented on the right. Every codeword is associated with a unique path through the trellis diagram. A trellis diagram has 2^(M) nodes at each stage or time increment t. In FIG. 8, there are 16 nodes 820. There are 2 branches 822, 824 leaving each node. The branches from each node representing possible paths form each node or input value. As can be seen in FIG. 8, the top eight branch adders 830 contain only the signal term z_(k) and the bottom eight branches 840 contain only constants a and b. As described above, a and b are programmable constants and reflect the programmable detection target in use.

According to embodiments of the present invention, two separate requirements are required to identify the existence of a synchronization mark. One requirement is that the pattern of bits following the synchronization field, matches specific bit patterns in the synchronization marks. This “pattern match” requirement is discussed at length below in connection with a particular embodiment where detection of a synchronization mark occurs upstream of a primary data detector such as a Viterbi detector.

A second, separate requirement to identify a synchronization mark, is “phase alignment”. This separate and distinct requirement involves confirming the proper phase alignment of bits following a synchronization field.

FIG. 9 shows a simplified timing diagram illustrating the phase alignment requirement for detection of a synchronization mark according to an embodiment of the present invention. Specifically, a data region is typically preceded by a synchronization field comprising a repeated pattern of bits. In the particular embodiment shown in FIG. 9, the synchronization field comprises a repeated pattern of four bits, with phase 0 having a polarity of 0, phase 1 having a polarity of 0, phase 2 having a polarity of 1, and phase 3 having a polarity of 1.

The phase of the synch field that is initially read, limits the possible location of a subsequent synchronization mark. For example, in the particular embodiment of FIG. 9, where phase 0 is initially read, the earliest possible occurrence of a synchronization mark is four bits later, as the remaining phases (1-3) of the synchronization field would occupy the intervening three bits. This preclusion of the synchronization mark from the remaining bits of the synchronization field, can be used as the basis for the “phase alignment” requirement.

Specifically, data is read back from the storage medium using a 2T clock. From this clock signal, bit times may be counted as in the first row of FIG. 9.

These bit times may also be read as modulo 4, as indicated in the third row of FIG. 9. When a synchronization mark is first attempted to be detected from an incoming flow of data from the disk, it is not known in advance which particular phase (0-3) of the repeated synchronization field will be read. Accordingly, rows 4-7 of FIG. 9 show a timing diagram for each possibility.

Once the timing loops lock, it is known which of the four phases of the synchronization field was read. From this information, it can be determined whether the phase alignment requirement for detection of a synchronization mark, has been satisfied.

For example, where phase 0 of the synchronization field is read, in order to satisfy the phase alignment requirement the bit count modulo 4 must be equal to zero. Where phase 1 is read from the synchronization field, then the phase alignment requirement for finding a synchronization mark is that bit count modulo 4 be equal to one. Where phase 2 of the synchronization field is read, then the phase requirement for finding synchronization mark is that bit count modulo 4 be equal to two. Where phase 3 of the synchronization field is read, then the phase alignment requirement for finding a synchronization mark is that bit count modulo 4 be equal to three.

By imposing a phase alignment requirement in addition to the pattern match, a more rigorous test for the existence of a synchronization mark is implemented. This more rigorous test reduces the number of false positives that result from random pattern matches in the enormous flows of data read from a storage medium.

Application of the phase alignment requirement is now explained in connection with a specific embodiment. In this example, data is read and it is determined from locking of the timing loops that the phase of the synchronization field is “sync field phase 1”. This means that according to the phase alignment requirement, a synchronization mark can be found only when the “bit count modulo 4” is 1.

Suppose that the separate pattern matching requirement indicates a pattern match with the synchronization mark starting at bit count 82. 82 modulo 4 equals 2. This indicates that the first bit of the possible synchronization mark is not consistent with its expected location based upon the phase of the synchronization field. Accordingly, the phase alignment requirement is not met, and no synchronization mark is indicated, despite the pattern match.

Now, suppose that reading is continued and another pattern match is found starting at bit count 85. 85 modulo 4 equals 1. This indicates that the first bit of the possible synchronization mark is consistent with its expected location based upon the phase of the synchronization field. Therefore, the phase alignment requirement is also met, and so the presence of a synchronization mark is indicated.

While the above-embodiment describes checking for phase alignment utilizing a modulo 4 counter, this is not required by the present invention. Alternative embodiments of the present invention could utilize a modulo N counter, where N=number of phases of the repeated pattern of bits in the synchronization field.

As emphasized above, the phase alignment requirement is only one of two separate requirements to identify a synchronization mark. The other requirement is pattern matching.

In a particular embodiment this pattern matching requirement may be employed to detect a synchronization mark from the output of a matched filter upstream of a primary data detector such as a Viterbi detector. Specifically, FIG. 9A again shows the data channel of FIG. 7, with the matched filter 950 upstream of the Viterbi detector 940. Embodiments in accordance with the present invention detect a synchronization mark based upon the output (z_(k)) 960 of the matched filter. By identifying the location of the synchronization mark upstream of the Viterbi detector, delay associated with the latency of the Viterbi output is avoided. Avoidance of such a delay allows time to align parity framing, and to properly start the time-varying trellis of the Viterbi detector.

A data channel of FIG. 9A uses a matched 16 state equalization target 912 and a matched filter 950. The bits that were previously written and are to be detected (a_(k)) 910 are applied to the equalizer represented by a matched 16-state (MS16) equalizer target 912 given by F(D)=(1−D²)(1+p₁D+p₂D²)(p₂+p₁D+D²)/2, where D is a delay, p₁ and p₂ are parameters. For example, the output of delay D of a_(k) is a_(k−1). Similarly, the output of delay D² of a_(k) is a_(k−2). The output from the equalizer 912 is a noisy equalized signal y_(k) 930 where n_(k) is used to denote the noise. y_(k) is then provided at the input of the matched filter 950 that is given by 4*(−1+D²).

The matched filter 950 provides output z_(k) 960 to a Viterbi detector 940. The matched 16-state equalizer target 912 may also be represented by (1+aD+bD²—bD⁴−aD⁵−D⁶)/2, where a=(p₁/p₂)+p₁ and b=((p₁ ²+1)/p₂)+p₂−1.

The MS16 equalization target 912 is a symmetrical target with only two parameters for programming. The a and b parameters allow great flexibility in target response and each can be changed independently. The matched 16 state (MS16) equalization target exhibits less high frequency energy than the native 16-state equalization target. Such an equalization target is described in the U.S. Pat. No. 7,286,595.

Embodiments of the invention include various formats for primary and embedded synchronization marks that are to be detected from the output of the matched filter, upstream of the Viterbi detector. FIG. 10 is a diagram illustrating various formats (1000 a, 1000 b, 1000 c, and 1000 d) of primary synchronization marks and embedded synchronization marks. Specifically, 20 bit, 34 bit primary synchronization marks may be or may not be found with embedded synchronization marks. The primary synchronization mark may also have 40-bit, 68-bit, 80-bit or 136-bit, and the like. The bits that were previously written and which are now to be detected (a_(k)) shown in FIG. 9A includes such predefined primary or embedded synchronization marks that are recorded on a medium.

A primary synchronization mark is located prior to a data region and is used for detection of the starting location of data recorded on the media. One synchronization mark format 1000 a of FIG. 10 includes a preamble or synchronization field 1002, followed by a 20-bit primary synchronization mark 1004, and then a data region 1006 a which does not have an embedded synchronization mark. In another set of embodiments, synchronization mark format 1000 b includes a preamble 1002, followed by a 34-bit primary synchronization mark 1008 a, and then a data region 1006 b without any embedded synchronization mark. According to other embodiments, the format 1000 c includes a preamble or synchronization field 1002, followed by two 34-bit primary synchronization marks 1008 b and 1008 c, and then data region 1006 c again lacking any embedded synchronization marks.

FIG. 11A is a diagram illustrating a conventional 34-bit primary synchronization mark 1100 described in the U.S. Pat. No. 7,010,065. The 34-bit primary synchronization mark 1100 has three pattern matches 1104 a, 1104 b and 1104 c. Pattern match 1104 b is identical to pattern match 1104 c except that it is flipped in polarity. Pattern match 1104 a has 6 bits while pattern matches 1104 b and 1104 c has 10 bits.

The conventional synchronization mark 1100 shown in FIG. 11A, may be effectively contrasted with embodiments of the present invention with reference to FIG. 11B, which illustrates a 34-bit primary synchronization mark 1102 according to an embodiment of the present invention 1102. That synchronization mark 1102 has three pattern matches 1120 a, 1120 b and 1120 c. Pattern matches 1120 a and 1120 c have 10 bits, while pattern match 1120 b has 12 bits.

Moreover, in addition to heightened accuracy, specific embodiments of the primary synchronization marks according to the present invention improve the speed of detection of synchronization mark location. Specifically, by detecting the synchronization mark prior to the Viterbi trellis, latency of Viterbi output is avoided and more time is allowed to align parity framing and to properly start the time-varying trellis.

FIG. 11C is a diagram illustrating a 20-bit primary synchronization mark of the present invention 1104. The synchronization mark 1104 has one pattern match 1130. The use of such synchronization marks as shown in FIGS. 11B and 11C yield lower error rates than the synchronization mark 1100 shown in FIG. 11A. Note that in FIGS. 11B and 11C, the 2-bits before the start of the 34-bit and 20-bit primary synchronization marks always end as high (one).

Embodiments of the present invention also provide 16-bit, 20-bit and 24-bit patterns representing embedded synchronization marks. Such an embedded synchronization mark is located within a data region.

Specifically, returning to FIG. 10, format 1000 d includes an embodiment of an embedded synchronization mark according to the present invention. Format 1000 d includes a preamble or synchronization field 1002, followed by a primary synchronization mark 1014, then by a data region 1012. Embedded synchronization mark 1010 lies within data region 1006 d. The data region 1012 is before the embedded synchronization mark 1010, while the data region 1006 d is after the embedded synchronization mark 1010. Error correction code (ECC) can erase the data region 1012 when only the embedded synchronization mark 1010 is found.

FIG. 12 is a diagram illustrating 16-bit, 20-bit, and 24-bit embedded synchronization marks according to embodiments of the present invention. Specifically, an embodiment of a 16-bit embedded synchronization mark 1200 is described by a length pattern 1202 and polarity patterns 1204 a and 1204 b. This 16-bit embedded synchronization mark includes two 8-bit symbol patterns 1204 a and 1204 b, which are opposite in polarity, represented by:

-   1L 2L 3L 3L 2L 3L 2L -   (+−−+++−−−++−−−++).

Similarly, the 20-bit embedded synchronization mark includes two 10-bit symbols given by the length patterns 1212 and polarity patterns 1214 a and 1214 b, represented by:

-   2L 3L 2L 3L 3L 2L 3L 2L -   (−−+++−−+++−−−++−−−++).     The polarity pattern 1214 b is a reversed pattern of 1214 a, in both     a sequence of the length pattern and in polarity.

Additionally, a 24-bit embedded synchronization mark pattern 1220 is described by the length pattern 1222 and a polarity pattern 1224, represented by:

-   3L 3L 2L 2L 3L 4L 4L 3L -   (−−−+++−−++−−−++++−−−−+++).     The detection of such embedded synchronization marks helps with     identifying the data region that requires ECC.

Embodiments of the invention provide the corresponding detectors for synchronization marks. For example, FIG. 13A illustrates a block diagram of an exemplary synchronization detector for detecting a 34-bit primary synchronization mark according to an embodiment of the present invention. As also shown above in FIG. 11B, the pattern of the 34-bit primary synchronization mark comprises 2L magnetic patterns.

The previously written bits that are to be detected (a_(k)) 910 are applied to the equalizer 912 given by F(D) to generate noisy equalized signal y_(k) 930 where n_(k) is used to denote the noise. Then, y_(k) 930 is applied to a first matched filter 950 given by 4*(−1+D²) to generate z_(k) 960. This is the same as shown in FIG. 9.

However, rather than using z_(k) 960 as the direct input to a Viterbi detector 940 as shown in FIG. 9A, in the embodiment of FIG. 13A, z_(k) 960 is applied to a second matched filter (MF) 1370 to generate an output x_(k) 1372. z_(k) 960 is a MF output for single bit, while x_(k) 1372 is a MF output for 2 bits or 2L magnets. The second matched filter 1370 is given by (1+D).

The output x_(k) 1372 is applied to a half bit rate slicer (MSB bit) 1374 to form an output s_(k) 1376 that is a number of 2 magnets, where MSB stands for a most significant bit. Next, s_(k) 1376 is applied to a pattern match logic block 1378 to generate one of pattern matches 1120 a, 1120 b and 1120 c. If the pattern match 1120 a is the output from the pattern match logic block 1378, the pattern match 1120 a is delayed by D⁶ and then delayed by D⁵ to yield an output r_(k) 1382. Furthermore, if the pattern match 1120 b is the output from the pattern match logic block 1378, the pattern match 1120 b is delayed by D⁵ to yield an output r_(k) 1382. Additionally, if the pattern match 1120 c is the output from the pattern match logic block 1378, the pattern match 1120 c is the output r_(k) 1382. The loop indicated by the arrow between D² and D⁴ covers the situation where the synchronization mar_(k) is repeated several times.

In the embodiment of FIG. 13A, the r_(k) 1382 is further delayed by D² to input to a comparison block 1390 to compare the signal with synchronization criteria N at a comparison block 1390. For each 34-bit synchronization mark 1102, a minimum of 2 out of 3 pattern matches 1120 a, 1120 b and 1120 c are required to be identified to provide the start of data trigger for the Viterbi detector 358 as shown in FIG. 3. Similarly, for 68-bit synchronization mark (or two 34-bit synchronization marks), a minimum 2 matches out of 6 are required. Additionally, for 102-bit synchronization mark, a minimum of 2 matches out of 9 are required. The normal, minimum or relaxed, and maximum criteria N for pattern matches 1120 a, 1120 b and 1120 c of the 34-bit primary synchronization mark are shown in TABLE A below:

TABLE A # OF CONSECUTIVE 34-BIT PRIMARY SYNCHRONIZATION MARKS One 34-bit Two 34-bit Three 34-bit CRITERIA Sync Mark Sync Marks Sync Marks NORMAL N = 2 of 3 N = 3 of 6 N = 4 of 9 RELAXED N = 2 of 3 N = 2 of 6 N = 2 of 9 MAXIMIUM N = 3 of 3 N = 6 of 6 N = 9 of 9

In one embodiment of the invention, a mod-2 counter logic is used to detect a primary synchronization mark. In FIG. 13A, f_(k) 1396 is compared with a mod-2 counter logic 1392 to determine if it is one at the end of the synchronization field. If it is one in proper phase alignment with the synchronization field (as determined by the modulo counter), the synchronization mark is found.

FIG. 13B illustrates a simplified block diagram of an exemplary synchronization detector for detecting a 20-bit primary synchronization mark according to an embodiment of the present invention. The output d_(k) 1394 from the half bit slicer (MSB) is pattern match 1130 that has a number of 2 length magnets. As the pattern match 1130 for the 20-bit primary synchronization mark has 18 bits, there are maximum 9 pairs. TABLE B below shows the different criteria N for pattern matches for detection of a 20-bit primary synchronization mark:

TABLE B CRITERIA One 20-BIT PRIMARY SYNCHRONIZATION MARK NORMAL N = 7 of 9 RELAXED N = 6 of 9 MAXIMUM N = 9 of 9

Referring to FIGS. 13A and 13B again, the sync pattern match is compared to a first criteria of pattern match at block 1390. If the first criteria is met, the output f_(k) 1396 is compared to a second criteria of phase alignment at block 1392. Only if that second criteria is also met is a synchronization mark determined to be present. The benefit of requiring both pattern matching and phase alignment in the detection of synchronization marks, is to reduce the likelihood of false positive indication of synchronization marks.

Although certain exemplary sync mark patterns are illustrated above, embodiments in accordance with the present invention are not limited to detecting these synchronization marks. According to alternative embodiments, other sync marks may be detected utilizing the requirement of both phase alignment and pattern matching.

Embodiments of the invention further provide circuits for detecting the 16-bit, 20-bit and 24-bit embedded synchronization marks. FIG. 14 shows a simplified embodiment of such a detection circuit, which also uses the matched 16 state equalization target 912 and a matched filter 950 shown in FIG. 9A. As shown in FIG. 14, one of the 16-bit, 20-bit or 24-bit embedded synchronization pattern matches 1460 a, 1460 b and 1460 c is generated from the output z_(k) 960 of the matched filter 950.

In the 16-bit embedded synchronization mark 1460 a, the polarities of the outputs z_(k−15), z_(k−14), through z_(k) have the polarity patterns 1204 a and 1204 b shown in FIG. 12. Similarly, in the 20-bit embedded synchronization mark 1460 b, the polarities of z_(k−19), z_(k−18), through z_(k) have the polarity patterns 1214 a and 1214 b shown in FIG. 12. Additionally, in the 24-bit embedded synchronization mark 1460 c, the polarities of z_(k−23), z_(k−22), through z_(k) have the polarity pattern 1224 shown in FIG. 12.

When one of the embedded synchronization pattern matches 1460 a, 1460 b, 1460 c is generated from z_(k) 960 in a generator 1470, the generated embedded synchronization pattern match is compared with the threshold criteria N at block 1490. The specific criteria for detection may be programmable to be between 70 and 90 percent of maximum noiseless matched filter output.

The value of the maximum noiseless matched filter output, however, depends upon the a & b parameters, and which embedded synchronization mark is used. Let m denote max value, then m is given by:

m=16(6b+3a−2)−7, for 16-bit embedded sync mark

m=8(15b+9a−5)−9, for 20-bit embedded sync mark

m=8(15b+11a), for 12-bit embedded sync mark

The threshold criteria for detection can then efficiently be implemented, for example, as threshold=m/2+m/4+i(m/32), where i is programmable to either 1, 2, 3, or 4.

In a specific embodiment of the invention, a mod-4 counter logic is used to detect an embedded synchronization mark. The output f_(k) 1482 is then compared with a mod-4 counter logic 1492 to determine if it is one. If it is one in proper phase alignment with the synchronization field (as determined by modulo counter), the synchronization mark is found.

Referring to FIGS. 13A and 13B again, the mod-2 counter is used for detecting the phase alignment of the primary sync mark at block 1392. This is because the primary sync mark comprises 2 length magnets generated from the half bit slicer at block 1374. On the other hand, referring to FIG. 14 again, the mod-4 counter is used for detecting the phase alignment of the embedded sync mark, as the embedded synchronization mark comprises a single length magnet and no half bit slicer is present in FIG. 14.

FIGS. 15 and 16 show specific architectures for circuits for generating and detecting embedded synchronization pattern matches 1460 a, 1460 b according to embodiments of the present invention. FIG. 15 illustrates an exemplary circuit architecture for 16-bit and 20-bit embedded synchronization detectors. The circuit 1500 comprises delays 1504, polarity inverters 1506, addition blocks 1508, a 10-bit symbol mode 1510, and a comparison block 1512. The delays 1504 may have D², D⁴, and D⁸. The circuit 1500A generates 20-bit and 16-bit embedded synchronization pattern matches 1460 b, 1460 a. The 20-bit and 16-bit embedded synchronization pattern matches 1460 b and 1460 a are applied to a 10 bit symbol mode 1510. If the 10 bit symbol mode 1510 is one, the 20-bit embedded synchronization pattern match 1460 b is applied to a comparison block 1512 to compare with a programmable threshold 1518 to determine if the synchronization mark is found or not. If the 10-bit symbol mode 1510 is zero, the 16-bit embedded synchronization pattern match 1460 a is applied to the comparison block 1512.

FIG. 16 illustrates an exemplary circuit architecture 1600 for generating and detecting 24-bit embedded synchronization pattern match 1460 c according to an embodiment of the present invention. The circuit 1600 comprises delays 1604, polarity inverters 1606, addition blocks 1608, a comparison block 1612. The delays 1604 may have D², D⁴, D¹² and D²⁰. The circuit 1600 generates the 24-bit embedded synchronization pattern match 1460 c. The embedded synchronization pattern match 1460 c is applied to a comparison block 1612 to compare with a programmable threshold to determine if the synchronization mark is found or not.

It is to be understood that the above description is intended to be illustrative and not restrictive. Many embodiments will be apparent to those of skill in the art upon reviewing the above description. For example, any other sync marks, such as 34-bit primary sync mark shown in FIG. 11A, may be used with the requirement of phase alignment. The scope of the invention should, therefore, be determined not with reference to the above description, but instead should be determined with reference to the appended claims alone with their full scope of equivalents. 

1. A method of detecting a synchronization mark, the method comprising: reading a stream of bits from a storage medium; performing pattern matching to determine whether a pattern of bits read from the storage medium, matches at least a portion of a synchronization mark; recognizing in the stream of bits, a phase of a repeated pattern of N bits indicative of a synchronization field; performing phase alignment to determine whether a location of the first bit of the pattern, is consistent with an expected location of the synchronization mark based upon the phase; and indicating an existence of a synchronization mark only where the pattern matching and phase alignment are satisfied.
 2. The method of claim 1 wherein the phase alignment is performed by comparing a number of the first bit with a modulo N counter reading.
 3. The method of claim 2 wherein N=4.
 4. The method of claim 3 wherein the phase alignment indicates the synchronization mark if, the phase is 0 and the reading of the modulo 4 counter is zero, the phase is 1 and the reading of the modulo 4 counter is 1, the phase is 2 and the reading of the modulo 4 counter is 2, or the phase is 3 and the reading of the modulo 4 counter is
 3. 5. The method of claim 1 wherein the synchronization mark comprises a primary synchronization mark preceding a data region.
 6. The method of claim 1 wherein the synchronization mark comprises a embedded synchronization mark located within a data region.
 7. The method of claim 1 wherein the stream of bits is read as output from a primary data detector.
 8. The method of claim 7 wherein the primary data detector comprises a Viterbi decoder.
 9. The method of claim 1 wherein the stream of bits is read as output from a matched filter upstream of a primary data detector.
 10. The method of claim 9 wherein the stream of bits is read as output from the matched filter upstream of a Viterbi decoder.
 11. An apparatus for detecting a synchronization mark, the apparatus comprising: a first generator configured to generate a first signal indicating that a pattern of bits read from a storage medium matches at least a portion of a synchronization mark; a second generator configured to generate a second signal indicating that a location of the first bit of the pattern, is consistent with an expected location of the synchronization mark based upon a phase of a repeated pattern of bits in a synchronization field; and a comparator having a first node in electronic communication with the first generator and a second node in electronic communication with the second generator, the comparator configured to generate a third signal indicating an existence of a synchronization mark, only where the first signal and the second signal are received.
 12. The apparatus of claim 11 wherein the comparator comprises an AND gate.
 13. The apparatus of claim 11 wherein the second generator comprises a modulo N counter, wherein N=the number of phases in the repeated pattern.
 14. The apparatus of claim method of claim 11 wherein N=4.
 15. The apparatus of claim of claim 14 wherein the second generator is configured to output the second signal if, the phase is 0 and the reading of the modulo 4 counter is zero, the phase is 1 and the reading of the modulo 4 counter is 1, the phase is 2 and the reading of the modulo 4 counter is 2, or the phase is 3 and the reading of the modulo 4 counter is
 3. 16. The apparatus of claim 11 wherein the synchronization mark comprises a primary synchronization mark preceding a data region.
 17. The apparatus of claim 11 wherein the synchronization mark comprises a embedded synchronization mark located within a data region.
 18. An apparatus of claim 11 further comprising an equalizer with a matched filter configured to receive the bit stream and to generate a first equalized signal.
 19. The apparatus of claim 18, wherein the first equalized signal is generated from the lengthened equalization target comprising a mathematical convolution of a first and a second transfer function, the first transfer function comprising a predetermined equalization target for providing desired shaping to the read signal, and the second transfer function comprising a matched filter function providing a time-reversed component that is a time-reversed replica of a whitening filter component of the equalization target.
 20. An apparatus for detecting a synchronization mark, the apparatus comprising: a processor in electronic communication with a computer readable storage medium, the computer readable storage medium having stored thereon code configured to direct the processor to: read a stream of bits from a storage medium; perform pattern matching to determine whether a pattern of bits read from the storage medium, matches at least a portion of a synchronization mark; recognize in the stream of bits, a phase of a repeated pattern of N bits indicative of a synchronization field; perform phase alignment to determine whether a location of the first bit of the pattern, is consistent with an expected location of the synchronization mark based upon the phase; and indicate an existence of a synchronization mark, only where the pattern matching and phase alignment are satisfied
 21. The apparatus of claim 20 further comprising a modulo N counter configured to count the stream of bits.
 22. The apparatus of claim 20 further comprising an AND gate configured to receive at a first input node, a first signal indicating a result of the pattern matching, and to receive at a second input node, a second signal indicating a result of the phase alignment. 